package com.neusoft.Shixun.controller;

import com.neusoft.Shixun.po.CareItem;
import com.neusoft.Shixun.po.ResponseBean;
import com.neusoft.Shixun.service.CareItemService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.Date;
import java.util.List;

@RestController
@CrossOrigin("*")
@RequestMapping("/CareItemController")
public class CareItemController {

    @Autowired
    private CareItemService careItemService;

    @GetMapping("/getAllCareItems")
    public ResponseBean<List<CareItem>> getAllCareItems() {
        return careItemService.getAllCareItems();
    }

    @GetMapping("/getCareItemsByCondition")
//    多条件查询
    public ResponseBean<List<CareItem>> getCareItemsByCondition(
            @RequestParam(required = false) String status,
            @RequestParam(required = false) String itemName) {
        return careItemService.getCareItemsByCondition(itemName, status);
    }

    @GetMapping("/{id}")
    public ResponseBean<CareItem> getCareItemById(@PathVariable Integer id) {
        return careItemService.getCareItemById(id);
    }

    @PostMapping("/addCareItem")
//    添加护理项目
    public ResponseBean<Integer> addCareItem(@RequestBody CareItem careItem) {
        return careItemService.addCareItem(careItem);
    }

    @PutMapping("/updateCareItem")
//    修改护理项目信息 如果状态修改为停用需要直接剔除护理级别项目列表中的对应的记录
    public ResponseBean<Integer> updateCareItem(@RequestBody CareItem careItem) {
        return careItemService.updateCareItem(careItem);
    }

    @DeleteMapping("/deleteCareItem")
//    护理项目逻辑删除
    public ResponseBean<Integer> deleteCareItem(@RequestParam Integer id) {
        return careItemService.deleteCareItem(id);
    }
}